/*
 * 2005-11-12 lxm 创建。 
 */
package com.hd123.rumba.runtime;

import java.text.ParseException;

import com.hd123.rumba.exception.BusinessException;

import net.sf.hibernate.HibernateException;

/**
 * @author lxm
 * 
 * 对应IVersionedPersistent的数据交换对象
 */
public class DVersionedPersistent extends DPersistent {

  private long oca;
  private String lastModified;

  // /////////////////////////
  // 用于 Web Service 数据交换

  /**
   * 从指定的接口对象赋值。
   * 
   * @param source
   */
  public void assignFrom(IPersistent source) {
    super.assignFrom(source);
    if (source instanceof IVersionedPersistent) {
      try {
        this.oca = ((IVersionedPersistent) source).getOca();
      } catch (Exception e) {
      }
      this.lastModified = exportDatetime(source, "getLastModified");
    }
  }

  /**
   * 将数据赋值给指定的接口对象。
   * 
   * @param source
   */
  public void assignTo(IPersistent target) throws BusinessException, ParseException,
      HibernateException {
    super.assignTo(target);
    if (target instanceof IVersionedPersistent) {
      importDatetime(target, "setLastModified", this.lastModified);
    }
  }

  // /////////////////////////
  // 属性方法

  public String getLastModified() {
    return lastModified;
  }

  public void setLastModified(String lastModified) {
    this.lastModified = lastModified;
  }

  public long getOca() {
    return oca;
  }

  public void setOca(long oca) {
    this.oca = oca;
  }

}
